import service from '@/utils/request'
import { selectDataClient } from '@/utils/common'
// import qs from 'qs'
const {  httpGet, httpPost } = service

const request = {
    // 获取按钮状态
    getCurrentUnitInfo (params) {
        return httpPost({
            url: '/turnover/audit/getCurrentUnitInfo',
            params
        })
    },
    // 获取周材验收列表页
    getWeeklyMaterialList (params) {
        return httpPost({
            url: '/turnover/acceptance/listByEntity',
            params
        })
    },
    // 新增周材验收
    WeeklyMaterialAdd (params) {
        return httpPost({
            url: '/turnover/acceptance/create',
            params
        })
    },
    // 获取周材验收基本信息
    getWeeklyMaterialBasicInfo (billId) {
        return httpGet({
            url: '/turnover/acceptance/findById',
            params: {
                billId
            }
        })
    },
    // 保存周材验收基本信息
    saveWeeklyMaterialBasicInfo (params) {
        return httpPost({
            url: '/turnover/acceptance/update',
            params
        })
    },

    // 供方后面的选择入库明细和验收明细里面的选择物资
    getWarehousingList (params) {
        return selectDataClient({
            SelectServiceToken: '/turnover/warehousing/selectAcceptDtl', // 客户端对应方法名
            IsSingleMode: false, // 是否单选 true 单选 false 多选
            SelectedIDs: [], // 已选中id(注意：是上一次已选中的id，不是要传的参数，如果第一次选，则传[]) // 这个是客户端给的,没有则为空
            InitParamsStr: JSON.stringify(params),    // 接口参数(name为模拟参数)
            Title: '选择物资' // 标题
        })

        // return httpPost({
        //     url: '/turnover/warehousing/selectAcceptDtl',
        //     params
        // })
    },
    // 获取验收明细表格数据
    getAcceptanceList (billId) {
        return httpGet({
            url: '/turnover/acceptance/getDtlByAccepId',
            params: {
                billId
            }
        })
    },
    // 保存验收明细表格数据
    saveAcceptanceData (params) {
        return httpPost({
            url: '/turnover/acceptance/updateDtl',
            params
        })
    },

    // 获取服务费用表格数据
    getServeList (billId) {
        return httpGet({
            url: '/turnover/acceptance/getChargeList',
            params: {
                billId
            }
        })
    },

    // 保存服务明细的数据
    saveServiceFeeData (params) {
        return httpPost({
            url: '/turnover/acceptance/updateChargeDtl',
            params
        })
    },
    // 周材验收-服务费用-选择结算单位
    getBillingUnit (data, ids) {
        return selectDataClient({
            SelectServiceToken: 'GeneralSelectOuter', // 客户端对应方法名
            IsSingleMode: true, // 是否单选 true 单选 false 多选
            SelectedIDs: [ids], // 已选中id(注意：是上一次已选中的id，不是要传的参数，如果第一次选，则传[]) // 这个是客户端给的,没有则为空
            InitParamsStr: JSON.stringify(data),    // 接口参数(name为模拟参数)
            Title: '选择结算单位' // 标题
        }).then(res => {
            return res[0]
        })

    },

    // 周材验收-服务费用-选择合同
    getContract (orgId, contracted) {
        // alert(JSON.stringify(orgId))
        // alert(JSON.stringify(contracted))
        return selectDataClient({
            SelectServiceToken: '/subcontract/thirdParty/getZhouCaiAcceptance', // 客户端对应方法名
            IsSingleMode: true, // 是否单选 true 单选 false 多选
            SelectedIDs: [JSON.stringify(contracted)], // 已选中id(注意：是上一次已选中的id，不是要传的参数，如果第一次选，则传[]) // 这个是客户端给的,没有则为空
            InitParamsStr: JSON.stringify(orgId),    // 接口参数(name为模拟参数)
            Title: '选择合同' // 标题
        }).then(res => {
            return res[0]
        })
    },
    // 物资验收-基本信息:选择验收人员
    getAcceptancerName () {
        return  selectDataClient({
            SelectServiceToken: '/hr/user/getUserUnderOrgPage', // 客户端对应方法名
            IsSingleMode: true, // 是否单选 true 单选 false 多选
            SelectedIDs: [], // 已选中id(注意：是上一次已选中的id，不是要传的参数，如果第一次选，则传[]) // 这个是客户端给的,没有则为空
            Title: '选择当前机构人员' // 标题
        }).then(res => {
            return res[0]
        })
    },
    // 根据合同获取币种/税率等
    getcontractbasicInfo (contractId) {
        return httpGet({
            url: '/subcontract/thirdParty/getMaterialProcurementInfo',
            params: {
                contractId
            }
        })
    },
    // 周材调拨获取币种
    weeklyMaterialAllocation (billId) {
        return httpGet({
            url: '/turnover/allocation/getCurrency',
            params: {
                billId
            }
        })
    },
    // 提交审核
    commitAudit (params) {
        return httpPost({
            url: '/turnover/audit/commit',
            params
        })
    },
    // 审核
    audit (params) {
        return httpPost({
            url: '/turnover/audit/audit',
            params
        })
    },

    // 撤销审核
    undoAudit (params) {
        return httpPost({
            url: '/turnover/audit/undoAudit',
            params
        })
    },
    // 作废
    nullify (params) {
        return httpPost({
            url: '/turnover/audit/nullify',
            params
        })
    },

    // 删除
    deleteData (billId) {
        return httpGet({
            url: '/turnover/acceptance/delete',
            params: {
                billId
            }
        })
    },
    // 获取历史审核数据
    getAuditHistory (params) {
        return httpPost({
            url: '/turnover/audit/getAuditHistory',
            params
        })
    },
    // 周材验收冲红单
    redSingle (billId) {
        return httpGet({
            url: '/turnover/acceptance/initRed',
            params: {
                billId
            }
        })
    },
    // 已经做了结算的周材验收数据,不能再冲红单;
    // 月结后,月结区间内的验收单据不能冲红单
    isRedSingleFn (billId) {
        return httpGet({
            url: '/turnover/acceptance/checkIsQuote',
            params: {
                billId
            }
        })
    }

}
export default request